package cn.tedu.ivos.user.pojo.entity;

import io.swagger.v3.oas.annotations.media.Schema;
import java.util.Date;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.Data;

/**
 * 用户表
 */
@Schema(description="用户表")
@Data
public class User {
    /**
    * 用户id
    */
    @Schema(description="用户id")
    @NotNull(message = "用户id不能为null")
    private Long id;

    /**
    * 用户名
    */
    @Schema(description="用户名")
    @Size(max = 20,message = "用户名最大长度要小于 20")
    private String username;

    /**
    * 密码
    */
    @Schema(description="密码")
    @Size(max = 20,message = "密码最大长度要小于 20")
    private String password;

    /**
    * 邮箱
    */
    @Schema(description="邮箱")
    @Size(max = 50,message = "邮箱最大长度要小于 50")
    private String email;

    /**
    * 手机号
    */
    @Schema(description="手机号")
    @Size(max = 20,message = "手机号最大长度要小于 20")
    private String phone;

    /**
    * 年龄
    */
    @Schema(description="年龄")
    private Integer age;

    /**
    * 性别 女0 男1
    */
    @Schema(description="性别 女0 男1")
    @Size(max = 10,message = "性别 女0 男1最大长度要小于 10")
    private String gender;

    /**
    * 创建时间
    */
    @Schema(description="创建时间")
    private Date createTime;

    /**
    * 更新时间
    */
    @Schema(description="更新时间")
    private Date updateTime;

    /**
    * 状态 启用0 禁用1
    */
    @Schema(description="状态 启用0 禁用1")
    @Size(max = 10,message = "状态 启用0 禁用1最大长度要小于 10")
    private String status;

    /**
    * 员工职级
    */
    @Schema(description="员工职级")
    @Size(max = 10,message = "员工职级最大长度要小于 10")
    private String level;

    /**
    * 上级id
    */
    @Schema(description="上级id")
    private Long parentId;
}